Auto merge of #3410 - fmdkdd:fix-3390-message-format-parse-stderr, r=alexcrichton
authorbors <bors@rust-lang.org>
Mon, 19 Dec 2016 17:04:04 +0000 (17:04 +0000)
committerbors <bors@rust-lang.org>
Mon, 19 Dec 2016 17:04:04 +0000 (17:04 +0000)
Fix `--message-format JSON` when rustc emits non-JSON warnings

The `--message-format JSON` flag parses all the stderr output of rustc to JSON,
but rustc can emit non-JSON lines to stderr (e.g., for warning about the
unstable `-Z` flag on the stable channel), causing cargo to fail reporting
compilation errors when using `--message-format JSON`.

This commit adds a check to look for lines beginning with `{` to only parse
these lines as JSON.  Other lines from rustc are forwarded to the stderr of
cargo.

Fixes #3390.


Trivial merge